Call statistics notebook

The goal with this notebook is to better understand the data we are working with and as a consequence obtain valuable information about the logs files we are working with.

Libraries used in the notebook

Instructions to run the notebook locally

Please set the variable path_logs to the path where you want to access the .logs files to be converted to .json files and saved into the project logs directory

The idea is to copy all the .log files from one central location to a project ./logs directory. It is important to point out that the .log files we are working with are being obtained from Seafile everyday.

Descriptive statistics about our call measurements

Table grouped by status to obtain an insight about how many different status number we have in our data

Table grouped by rating to obtain an insight about how many different ratings we have in our data

Boxplot for that descriptive statistics dataframe obtained above

Same boxplot but using a more interactive library

Scatter matrix for the 5 main variables from our dataframe

The goal of a scatter matrix is to see the relationship between variables. Therefore, our goal with this chart was to obtain a better visualization about the relationship between jitter_tx, jitter_rx, packet_loss_tx, packet_loss_rx and latency

Splitting up the csv based on jitter, packet loss and latency values

Based on the literature we know the minimum required values for a Excellent-to-Good call threshold and Good-to-Fair call threshold. More specifically when can show a table from the reference [1] that show the quality thresholds for some codecs and buffers

Markdown Monster icon

Split Log files into three categories
  1. Alias with the 4 best latency, jitter and packet loss values
  2. Alias with the 4 worst latency, jitter and packet loss values
  3. Alias at the first quartile of a dataframe ordered by latency, jitter and packet loss values depending o the chart being ploted
  4. Alias at the in the middle of a dataframe ordered by latency, jitter and packet loss values depending o the chart being ploted
  5. Alias at the third quartile of a dataframe ordered by latency, jitter and packet loss values depending o the chart being ploted

Goal with the charts below

The idea is to plot the dataframes obtained above (GREAT, BAD, MEDIAN, FIRST AND THIRD QUARTILE) values of our parameters in order to compare those with the average of the same parameter. In this section we are dealing with latency.

Latency Charts

Jitter Tx Charts

Jitter Rx Charts

Packet Loss Tx Charts

Packet Loss Rx Charts

References

[1] Hu, Z., Yan, H., Yan, T., Geng, H. and Liu, G. Evaluating QoE in VoIP networks with QoS mapping and machine learning algorithms

In-text: (Hu et al., 2020)

Your Bibliography: Hu, Z., Yan, H., Yan, T., Geng, H. and Liu, G., 2020. Evaluating Qoe In Voip Networks With Qos Mapping And Machine Learning Algorithms.